- // MIR for `redundant` before InstSimplify
+ // MIR for `redundant` after InstSimplify
  
  fn redundant(_1: *const &u8) -> *const &u8 {
      debug x => _1;                       // in scope 0 at $DIR/casts.rs:+0:30: +0:31
      let mut _0: *const &u8;              // return place in scope 0 at $DIR/casts.rs:+0:51: +0:64
      let mut _2: *const &u8;              // in scope 0 at $DIR/casts.rs:+1:5: +1:55
      let mut _3: *const &u8;              // in scope 0 at $DIR/casts.rs:+1:36: +1:37
      scope 1 (inlined generic_cast::<&u8, &u8>) { // at $DIR/casts.rs:6:5: 6:38
          debug x => _3;                   // in scope 1 at $DIR/casts.rs:10:23: 10:24
      }
  
      bb0: {
          StorageLive(_2);                 // scope 0 at $DIR/casts.rs:+1:5: +1:55
          StorageLive(_3);                 // scope 0 at $DIR/casts.rs:+1:36: +1:37
          _3 = _1;                         // scope 0 at $DIR/casts.rs:+1:36: +1:37
-         _2 = _3 as *const &u8 (PtrToPtr); // scope 1 at $DIR/casts.rs:11:5: 11:18
+         _2 = _3;                         // scope 1 at $DIR/casts.rs:11:5: 11:18
          StorageDead(_3);                 // scope 0 at $DIR/casts.rs:+1:37: +1:38
          _0 = _2;                         // scope 0 at $DIR/casts.rs:+1:5: +1:55
          StorageDead(_2);                 // scope 0 at $DIR/casts.rs:+2:1: +2:2
          return;                          // scope 0 at $DIR/casts.rs:+2:2: +2:2
      }
  }
  
